# schemas.py
from sqlmodel import SQLModel
from typing import Optional

# 基础模型
class UserBase(SQLModel):
    username: str
    full_name: Optional[str] = None

# 创建用户模型
class UserCreate(UserBase):
    password: str  # 添加类型注解

# 更新用户模型
class UserUpdate(SQLModel):
    full_name: Optional[str] = None
    password: Optional[str] = None

# 用户公开信息模型
class UserPublic(UserBase):
    id: int

# 令牌模型
class Token(SQLModel):
    access_token: str
    token_type: str